package main

import (
	"GORM_Demo04/part08/MyPojo"
	"fmt"
	"github.com/jinzhu/gorm"
	_ "github.com/jinzhu/gorm/dialects/mysql"
)

/*	常用方法

	【12】Not：排除某个具体条件的查询操作
	【13】Or：多个条件的查询
	【14】Order：进行升序或者降序的排列
*/

func main() {
	db, err := gorm.Open("mysql", "root:123456@tcp(192.168.11.189:3306)/lztest?charset=utf8&parseTime=True&loc=Local")

	if err != nil {
		panic(err)
	}
	defer db.Close()

	db.LogMode(true)

	/*
		【12】Not：排除某个具体条件的查询操作
		【13】Or：多个条件的查询
		【14】Order：进行升序或者降序的排列
	*/

	//【12】Not：排除某个具体条件的查询操作

	/*	var users []MyPojo.User
		//SELECT * FROM `users`  WHERE (u_name= '开开') AND NOT (u_age = 55)
		db.Where("u_name= ?", "开开").Not("u_age = ?", 55).Find(&users)*/

	//【13】Or：多个条件的查询

	var users []MyPojo.User
	/*// SELECT * FROM `users`  WHERE (uid= 2) OR (uid = 3)
	db.Where("uid= ?", 2).Or("uid = ?", 3).Find(&users)
	fmt.Println(users)*/

	//【14】Order：进行升序或者降序的排列
	//SELECT * FROM `users`   ORDER BY uid desc
	db.Order("uid desc").Find(&users)
	fmt.Println(users)
}
